# -*- coding: utf-8 -*-
# 姓名:谚语
# 开发时间:2022/10/21 9:46
from flask import g

"""
自定义一个装饰器，判断用户是否登录了。如果登录，则继续访问。如果没有登录，则直接返回。(也就是不能继续访问)
本质上就是一个登录的拦截器
"""


def login_required(func):  # func 形参传入想访问的视图函数
    def wrapper(*args, **kwargs):  # *args 任意的参数   **kwargs 任意的带有键值对的参数
        if g.user_id is not None:  # 用户ID不为空，表示用户已经登陆
            return func(*args, **kwargs)
        else:
            return {'message': '用户没有登陆，不能继续访问'}, 401

    return wrapper
